#include <stdio.h>
#include <opencv2/opencv.hpp>

int main()
{
    // 读取彩色图像
    IplImage *img = cvLoadImage("a.png", CV_LOAD_IMAGE_COLOR);
    if (!img)
    {
        printf("Cannot load image!\n");
        return 1;
    }

    // 创建灰度图像
    IplImage *gray = cvCreateImage(cvGetSize(img), IPL_DEPTH_8U, 1);

    // 转换为灰度图像
    cvCvtColor(img, gray, CV_BGR2GRAY);

    // 保存灰度图像
    cvSaveImage("output.jpg", gray);

    // 释放图像内存
    cvReleaseImage(&img);
    cvReleaseImage(&gray);

    return 0;
}